package com.ktjiaoyu.server.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ktjiaoyu.server.pojo.Menu;
import com.ktjiaoyu.server.vo.RoleMenuVo;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author jjx
 * @since 2024-07-10
 */
public interface IMenuService extends IService<Menu> {
    /**
     * 根据用户id查询菜单
     * @return
     */
    public List<Menu> getMenusByAdminId();

    /**
     * 查询所有的菜单并且分层级展示
     * @return
     */
    public List<Menu> getAllMenuList();

    /**
     * 获取角色所拥有权限
     * @param roleId
     * @return
     */
    public RoleMenuVo getMenuRoleList(Integer roleId) ;

    /**
     * 新增
     * @param menu
     * @return
     */
    public boolean saveMenu(Menu menu);

    /**
     * 修改
     * @param menu
     * @return
     */
    public boolean updateMenu(Menu menu);

    /**
     * 删除菜单
     * @param id
     * @return
     */
    public boolean delMenuById(Integer id);

    /**
     * 查询所有菜单 并把该菜单所对应角色查询出来
     * @return
     */
    public List<Menu> getMenusWithRole();

}
